package com.mrd.frame.domain;

import java.io.Serializable;

/*
 * 支付配置信息
 */
public class PayConfig implements Serializable {

  /**
	 * 
	 */
  private static final long serialVersionUID = -8286703736002702734L;
  /*
   * 微信公众号应用唯一标识
   */
  private String appId;
  /*
   * 微信公众号应用凭证
   */
  private String appSecret;
  /*
   * 商户平台商户id
   */
  private String mchId;
  /*
   * 商户平台api key
   */
  private String apiKey;

  /*
   * 微信统一下单正式接口
   */
  public static String ufdoderUrlFormal = "https://api.mch.weixin.qq.com/pay/unifiedorder";
  /*
   * 微信统一下单测试接口
   */
  public static String ufdoderUrlTest = "https://api.mch.weixin.qq.com/sandboxnew/pay/unifiedorder";
  /*
   * 实际调用的统一下单url
   */
  private String ufdoderUrl;

  /*
   * 回调url，必须是公网可以访问的url
   */
  private String notifyUrl;
  /*
   * 发起交易的主机IP
   */
  private String createIp;
  /**
   * 交易订单号（业务系统中对一笔交易的唯一标识）
   */
  private String orderId;
  /*
   * 微信公众号明睿达测试号中的的apikey
   */
  public static String apiKeyOriginal = "Mrd4598788Pay614425Mrd4598788Pay";
  public static String mchIdOriginal = "1460239802";
  /*
   * 微信公众号明睿达测试号中的appid
   */
  public static String appidOriginal = "wx5750a2d6889a5787";
  /**
   * 微信公众号明睿达测试号中的appSecret 若忘记可重置找回
   */
  public static String appSecretOriginal = "cdc923ca314a25bb1669ca3b61a17b5f";
  	/*
	 * 支付系统所在服务器的IP
	 */
  public static String createIpLochost = "192.168.2.115";
	/*
	 * 微信回调接口，必须是公网可以访问的
	 */
  public static String notifyurlOriginal =
      "http://winaya.xicp.net/cyt/weinxinPay/weixinNotify.html";
	/*
	 * 支付宝回调接口，必须是公网可以访问的
	 */
	public static String	  alinotifyurlOriginal	= "http://winaya.xicp.net/cyt/weinxinPay/aliNotify.html";
  /**
   * 微信验签环境秘钥回去接口
   */
  public static String getSignaturekeyUrl =
      "https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey";
  /*
   * 微信提供的查询订单接口
   */
  public static String orderQuery = "https://api.mch.weixin.qq.com/pay/orderquery";
  /*
   * 微信提供的 关闭订单接口
   */
  public static String closeOrder = "https://api.mch.weixin.qq.com/pay/closeorder ";
  /*
   * 微信提供的查询退款接口
   */
  public static String refundQuery = "https://api.mch.weixin.qq.com/pay/refundquery";
  /*
   * 微信提供的申请退款接口
   */
  public static String requestRefund = "https://api.mch.weixin.qq.com/secapi/pay/refund";
  /*
   * 微信提供的下载对账单接口
   */
  public static String downBill = "https://api.mch.weixin.qq.com/pay/downloadbill";
  /**
   * 微信提供的交易保障接口
   */
	public static String	  reportPay	         = "https://api.mch.weixin.qq.com/payitil/report";
	/**
	 * 项目发布时浏览器上访问时候的根路径
	 */
	public static String	  systemPublishPaht	 = "http://192.168.0.223:8080";
	/**
	 * 证书在服务器上的存储路径，涉及资金回滚的操作，如退款等用到
	 */
	public static String	  certificatePath	   = "D:/payCertificate/mrdPayCertificate/apiclient_cert.p12";

  public PayConfig() {

  };

  public PayConfig(String app_id, String app_secret, String mch_id, String api_key,
      String notify_url, String create_ip, String ufdoder_url, String order_id) {
    this.appId = app_id;
    this.appSecret = app_secret;
    this.mchId = mch_id;
    this.apiKey = api_key;
    this.notifyUrl = notify_url;
    this.createIp = create_ip;
    this.notifyUrl = ufdoder_url;
    this.orderId = order_id;
  }

  public String getAppId() {
    return appId;
  }

  public void setAppId(String appId) {
    this.appId = appId;
  }

  public String getAppSecret() {
    return appSecret;
  }

  public void setAppSecret(String appSecret) {
    this.appSecret = appSecret;
  }

  public String getMchId() {
    return mchId;
  }

  public void setMchId(String mchId) {
    this.mchId = mchId;
  }

  public String getApiKey() {
    return apiKey;
  }

  public void setApiKey(String apiKey) {
    this.apiKey = apiKey;
  }

  public String getUfdoderUrl() {
    return ufdoderUrl;
  }

  public void setUfdoderUrl(String ufdoderUrl) {
    this.ufdoderUrl = ufdoderUrl;
  }

  public String getNotifyUrl() {
    return notifyUrl;
  }

  public void setNotifyUrl(String notifyUrl) {
    this.notifyUrl = notifyUrl;
  }

  public String getCreateIp() {
    return createIp;
  }

  public void setCreateIp(String createIp) {
    this.createIp = createIp;
  }

  public String getOrderId() {
    return orderId;
  }

  public void setOrderId(String orderId) {
    this.orderId = orderId;
  }


  @Override
  public String toString() {
    return "PayConfig [appId=" + appId + ", appSecret=" + appSecret + ", mchId=" + mchId
        + ", apiKey=" + apiKey + ", notifyUrl=" + notifyUrl + ", createIp=" + createIp + "]";
  };



}
